import axios from '@/utils/http';
import base from './base';

export default {
  // 登录
  signIn(params) {
    return axios.post(
      `${base.sq}/users/login`,
      {
        phone: params.phone,
        login_type: params.type,
        password: params.password,
        verify_code: params.code,
      },
    );
  },
  // 注册
  signUp(params) {
    return axios.post(
      `${base.sq}/users`,
      {
        nickname: params.nickname,
        phone: params.phone,
        password: params.password,
        password_confirmation: params.rePassword,
        verify_code: params.code,
      },
    );
  },
  // 加载用户数据
  show(params) {
    return axios.get(
      `${base.sq}/users/${params.userId}`,
    );
  },
  // 更新用户数据
  update(params) {
    return axios.put(
      `${base.sq}/users/${params.userId}`,
      {
        ufile_key: params.avatarKey, // 头像key
        cover: params.cover, // 封面
        nickname: params.nickname, // 昵称
        gender: params.gender, // 性别 0女 1男
        tag_list: params.tags, // 我的标签
        living: params.living, // 现居地
        vocation: params.vocation, // 职业/所在行业
        company: params.company, // 所在学校/单位
        bio: params.bio, // 个人简介
      },
    );
  },
  // 加载用户最近活动
  activities(params) {
    return axios.get(
      `${base.sq}/operations`,
      {
        params: {
          user_id: params.userId,
          page: params.page,
        },
      },
    );
  },
  // 加载用户积分
  scores(params) {
    return axios.get(
      `${base.sq}/exp/${params.userId}`,
      {
        params: {
          page: params.page,
        },
      },
    );
  },
  // 获取educoder授权登录
  EduCoderSignIn() {
    return axios.get(`${base.sq}/call_back/get_educoder_url`);
  },
  // 我的资源
  myThings(params) {
    return axios.get(
      `${base.sq}/users/${params.userId}/datas`,
      {
        params: {
          type: params.type, // issue file comment
          page: params.page,
        },
      },
    );
  },
  // 用户关注信息
  follow(params) {
    return axios.get(
      `${base.sq}/users/${params.userId}/attention`,
      {
        params: {
          type: params.type, // follows following
          page: params.page,
        },
      },
    );
  },
};
